Hitherto, a service providing apparatus and a service providing system which provide services according to a service request from a client device on a network have been known. For example, in association with the remarkable spread of communication through the Internet, a variety of kinds of apparatuses other than conventional personal computers have been developed as network communicating-type apparatuses. For example, with respect not only to user-interactive devices such as PDA (Personal Digital Assistants), cellular phones, and the like but also image processing apparatuses such as scanners, printers, copying apparatuses, and digital cameras, household appliances such as televisions, air conditioners, and refrigerators, and the like, measures for making those apparatuses capable of communicating via a network are rapidly being taken.
In association with these measures, to improve usability and simplicity upon using those network corresponding type devices, there have been proposed various protocols for providing: automatic setting means of a network address; retrieving/searching means of the network device which provides services; and automatic setup means such as application software, utility software, operating system, or the like for controlling the network corresponding type devices. For example, the following protocols can be mentioned: “UPnP” (registered trademark), which has been developed mainly by Microsoft Corporation; “BMLinks” (Non-Patent Document 1), developed by JBMIA (The Japan Business Machine Information system industrial Association); “Rendezvous”, which is supported by “OS X” developed by Apple Computer, Inc.; and the like.
With regard to the retrieving/searching means of the network device, for example, there is an SSDP (Simple Service Discovery Protocol) constructing the “UPnP” (registered trademark) standard mentioned above as means for designating a simple service name such as “print” or “scan” as a searching condition. Means for further adding detailed searching conditions (hereinafter, simply referred to as “detailed retrieving conditions”) to the function of the SSDP has been proposed. Specifically speaking, in the case of using “print service” as a searching condition, searching means added with narrowing and limiting conditions of detailed searching conditions which specify that print resolution is equal to 600 dpi, a color output can be performed, a sheet tray corresponds to a sheet size of A3, and the like has further been proposed.
In any of the above cases, the client device executes a process for sending a data packet describing the searching condition (hereinafter, referred to as a search packet) onto the network in order to search for the usable device existing on the network. Thus, each network device receives the search packet. Among the network devices which received the search packet, the network device which satisfies the searching condition included in the search packet transmits response data which responds to the search packet to the client device which issued the search packet.
Refer to “BMLinkS”, The Japan Business Machine Information system industrial Association, Internet <URL: http://www.jbmia.or.jp/bmlinks/eng/index.htm>.
However, the method of transmitting the search packet to all of the network devices connected to the network as mentioned above has a problem in that, for example, if the search packet contains a large amount of data including a large amount of searching conditions, the communication load on the network increases and the efficiency of the network process deteriorates.
There is no problem in a case where the searching means as mentioned above is used in, for example, a household LAN (Local Area Network) or a LAN in a small office where there is no possibility of intervention of a malicious third party. However, in a case where an unspecified large number of users use the searching means as mentioned above on the network through an intranet or the Internet, there is a possibility that the searching means may be used illegally by a malicious third party. There is also a problem in that such illegal use can itself affect the network system which provides the services.
For example, in a case where the malicious client frequently issues search packets to which a large amount of searching conditions have been added, naturally, the corresponding increase in volume of traffic on the network results in the service providing apparatus which received the search packet continuing to analyze the contents of the searching conditions, and thus there is a possibility that the device does not function.
On the other hand, in a case where malicious software or device which continues to transmit the response data by pretending to be a network device according to a search request issued by the client is implemented on the network, there is a possibility that the network client cannot function, the contrary to the above case.